﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using BusinessObjects.BO_GetObjects;
using DigiLib;
using System.Data.SqlTypes;
using System.Data;

public partial class Administrator_Controls_UpdateUsers : System.Web.UI.UserControl {
    private static int user_id = 0;
    private static string old_password, new_password = string.Empty;

    protected void Page_Load(object sender, EventArgs e) {
        if (!IsPostBack) {
            LoadData();
        }
    }

    protected void LoadData() {
        try {
            ddlGroup.DataTextField = "GROUP_NAME";
            ddlGroup.DataValueField = "GROUP_USER_ID";
            ddlGroup.DataSource = BO_cms_group_users.SelectAll(1);
            ddlGroup.DataBind();

            if (Request["id"] != null) {
                user_id = Convert.ToInt32(Request["id"]);
                FillUpForm(user_id);
            }
        } catch (Exception ex) {
            divMessage.InnerHtml = MessageBox.Error("Lỗi", "Phát hiện lỗi sau: " + ex.Message);
        }
    }

    protected void FillUpForm(int user_id) {
        DataTable objDT = BO_cms_users.Search(user_id);
        ddlGroup.SelectedValue = objDT.Rows[0]["GROUP_USER_ID"].ToString();
        txtFullname.Text = objDT.Rows[0]["FULL_NAME"].ToString();
        //txtUsername.Text = objDT.Rows[0]["USER_NAME"].ToString();
        txtMobile.Text = objDT.Rows[0]["PHONE_NUMBER"].ToString();
        txtAddress.Text = objDT.Rows[0]["ADDRESS"].ToString();
        txtEmail.Text = objDT.Rows[0]["EMAIL"].ToString();
        txtOrder.Text = objDT.Rows[0]["ORDER_DISPLAY"].ToString();
        old_password = objDT.Rows[0]["PASS_WORD"].ToString();
        txtPassword.Text = objDT.Rows[0]["PASS_WORD"].ToString();
    }

    protected void btnSubmit_Click(object sender, EventArgs e) {
        try {
            int group_id = Convert.ToInt32(ddlGroup.SelectedValue);
            if (group_id == 0) {
                divMessage.InnerHtml = MessageBox.Error("Lỗi", "Phải chọn nhóm thành viên!");
                return;
            }

            if (user_id != 0) {
                new_password = txtPassword.Text.Trim();
                if (old_password != new_password)
                    old_password = Encrypt.ToMD5(new_password);

                string result = BO_cms_users.Update(user_id
                    , group_id
                    , txtFullname.Text.Trim()
                    , "a"//txtUsername.Text.Trim()
                    , old_password
                    , txtMobile.Text.Trim()
                    , txtAddress.Text.Trim()
                    , txtEmail.Text.Trim()
                    , DateTime.Now
                    , Administrator.USER_NAME
                    , true);

                divMessage.InnerHtml = MessageBox.Success("Thông báo", "Cập nhật thông tin quản trị viên thành công!");
            } else {
                divMessage.InnerHtml = MessageBox.Error("Lỗi", "Không tìm thấy ID của quản trị viên");
            }
        } catch (Exception ex) {
            divMessage.InnerHtml = MessageBox.Error("Lỗi", "Phát hiện lỗi sau: " + ex.Message);
        }
    }
}